package cn.iocoder.yudao.module.ai.controller.admin.operationendcompany.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.util.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;

@Schema(description = "管理后台 - 运营中心-公司管理（煤矿管理） Response VO")
@Data
@ExcelIgnoreUnannotated
public class OperationEndCompanyRespVO {

    @Schema(description = "自增编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "496")
    @ExcelProperty("自增编号")
    private Long id;

    @Schema(description = "终端公司（煤矿）名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "李四")
    @ExcelProperty("终端公司（煤矿）名称")
    private String name;

    @Schema(description = "描述", example = "你说的对")
    @ExcelProperty("描述")
    private String description;

    @Schema(description = "分配的识别码（唯一）")
    @ExcelProperty("分配的识别码（唯一）")
    private String companyId;

    @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

    @Schema(description = "供应商id", example = "5496")
    @ExcelProperty("供应商id")
    private Long suplierId;

    @Schema(description = "所属层级（1 集团级，2 二级公司级，3 能源企业）", requiredMode = Schema.RequiredMode.REQUIRED)
    @ExcelProperty("所属层级（1 集团级，2 二级公司级，3 能源企业）")
    private Integer level;

    @Schema(description = "所属集团编号", example = "30411")
    @ExcelProperty("所属集团编号")
    private Long belongLevel1Id;

    @Schema(description = "所属二级子公司编号", example = "21529")
    @ExcelProperty("所属二级子公司编号")
    private Long belongLevel2Id;

    @Schema(description = "关联系统中的组织id", example = "21749")
    @ExcelProperty("关联系统中的组织id")
    private Long relationOrgId;

//    private String appKey ;
//
//    private String appSecret ;

    /**
     * 子公司列表（获取全部列表会包含）
     */
    private List<OperationEndCompanyRespVO> children;

    /**
     * 排序字段
     */
    private Long orderNum;
}